/*
 * Copyright 2005-2013 finalist.cn. All rights reserved.
 * Support: http://www.finalist.cn
 * License: http://www.finalist.cn/license
 */
package com.finalist.service;

import com.finalist.entity.Payment;

/**
 * Service - 收款单
 * 
 * @author Finalist IT Group
 * @version 3.0
 */
public interface PaymentService extends BaseService<Payment, Long>
{

    /**
     * 根据编号查找收款单
     * 
     * @param sn
     *            编号(忽略大小写)
     * @return 收款单，若不存在则返回null
     */
    Payment findBySn(String sn);

    /**
     * 支付处理
     * 
     * @param payment
     *            收款单
     */
    void handle(Payment payment);

    /**
    * 根据充值信息编号查找收款单信息
    * 
    * 以此来查询出充值收款单的支付状态
    * 
    * @param chargeLogId 充值单编号
    *            编号(忽略大小写)
    * @return 收款单，若不存在则返回null
    */
    Payment findByChargeLog(Long chargeLogId);
    
    
    
    
    /**
     * 根据充值信息编号查找收款单信息
     * 
     * 以此来查询出充值收款单的支付状态
     * 
     * @param orderId 订单id
     *            编号(忽略大小写)
     * @return 收款单，若不存在则返回null
     */
     Payment findByOrder(Long orderId);

}